隨著科技的進步,透過資訊科技(Information Technology,簡稱IT)來處理資料成為趨勢,而且越來越深入和複雜。內部稽核人員面對電腦化如何對內部控制結構造成衝擊,以及如何利用電腦輔助工具,甚至透過電腦查核資訊之可靠性,均應有充分的認識。
日前針對台灣企業用戶進行檔案存取安全調查,發現台灣企業最在意的檔案存取安全需求,77%的受訪者想瞭解是否有人異常的登入存取檔案,其次是想瞭解是否有異常的修改檔案(近六成的需求),可見檢核人員登入後是否有異常操作檔案的行為,已成為台灣企業進行記錄稽核的第一要務。
IT人員常常面臨到的情境,在有限甚至無預算的情況要肩負起公司資訊安全
的重大任務,透過內部教育訓練、資安宣導,這都是較容易著手的。當然,若
公司有編列預算在這塊當然是再好不過。如果公司年度編列將其納入考量,相
對地就可以開始蒐集一些解決方案,不論是系統整合廠商、原廠,這邊就不多
做論述。但往往,您可能跟我面對處境跟我相同,在有限的資源底下規劃可因
應公司內部控制及外部稽核的解決方案出符合公司內部稽核的解決方案。
過去在微軟windows記錄其中兩項「應用程式」、「安全性」,預設都是將事
件做為「覆寫」,這也意謂著我們將無法蒐集完整的資料,但對較有經驗的內部
稽核人員「抽閱」是認為可靠度較高的一種方式,過往的歷史紀錄『安全性』
無法像「應用程式」裡面可直覺式可以看出過去的事件,因為windows記錄下
『安全性』記錄累積快速,例如筆者此次實際觀察內部正常使用的系統,一日就會產生高達285,230 KB,相當於278 MB的資料,如圖一,而且這還是壓縮過後的檔案大小。
(圖一)每日記錄檔約產生278MB 的壓縮檔資料量。
我們不可能放任這些平常我們用不到的資料佔據我們儲存設備(storage),將
其每日所產生的事件紀錄加以歸檔,是較理想的方式,這也是為何在此採取將事件紀錄(Event log) 歸檔(Archiving)完後,再搭配系統內建的排程功能去刪除這些事件(Event ID)。
目前微軟(Microsoft)也是目前台灣較為普遍的Infra Base,而各版本的物件存取的Event ID不盡相同,例如在Windows Server2012環境底下,物件存取的事件代碼為4656及4663(如表一)。
Windows Windows server2012 事件 ID 事件類型 描述
事件 ID
560, 562, 563, 564, 565, 566, 567, 568 4656, 4658, 4659, 4660, 4661, 4662, 4663, 4664 對象訪問 當訪問一給定的對象(文件,目錄等) 訪問的類型(例如讀,寫,刪除) ,訪問 是否成功或失敗,誰實施了這一行為
(表一)微軟事件代碼
批次檔程式
首先撰寫兩支批次檔程式,一支為打包event log至 Archiving,另外一支則用來例行刪除因不複寫所產生的event log。
程式檔名:事件壓縮.bat
程式說明:按照日期產生壓縮檔
set xday=%date:~0,4%%date:~5,2%%date:~8,2%
set xtime=%time:~0,2%%time:~3,2%
path C:\Program Files\7-Zip
set backup_path1=E:\Logs
set upload_path1=E:\Archiving
7z a -t7z %upload_path1%bbup%xday%_%xtime%.7zaa %backup_path1%
程式檔名:事件刪除.bat
程式說明:刪除event檔案
Event log刪除
del /F /S E:\Logs*.evtx
操作流程
操作流程相當簡易:<1>先建立E:\Logs 資料夾
<2>再去修改記錄檔存放路徑為:\Logs\Security.evtx。做法是從系統的[開始]功能表中開啟[事件檢視器],接著在其左側樹狀目錄中展開[Windows紀錄],在其下的[安全性]項目上點擊滑鼠右鍵,並於隨後出現的快顯選單中選擇[內容]。此時便可於[記錄檔路徑]欄位中,將路徑修改為「E:\Logs\Security.evtx」。(參見圖二)
(圖二)windows記錄下的安全性設定
路徑修改完成後自然會產生一個Security.evtx檔案,但須注意資料夾名稱是否輸入正確,如果資料夾名稱錯誤,檔案將不會抄過去。
兩個批次檔撰寫完成後,在系統的[工作排程器]中,設定每日下午9點做Archiving,間隔2小時確保時間足夠完成後,於每日下午11點刪除event log。如圖三。
(圖三)排程時間間隔2小時
在排程系統中,記得要將安全性選項變更為「不論使用者登入與否均執行」。如圖四。
(圖四)安全性選項
需要調閱特定日期的紀錄檔時,只須到E:\Archiving找到欲查核日期的壓縮檔,並解壓縮到E:\Logs,接著便可在[事件檢視器]中查看已儲存的記錄。如果需要尋找特定類型的事件,可在右鍵快顯選單中點擊[篩選目前的記錄](如圖五),輸入事件識別碼(如:4556,4663)即可過濾出包含這些事件ID的紀錄(如圖六),並且進一步查看其細節。
(圖五)檢視並篩選已儲存的記錄
(圖六)指定事件識別碼來篩選檢視的記錄檔
結語
資料軌跡向來都是各公司常會被歸類在資訊安全或者稽核的重點,在windows server2012 裡面4656,4663被歸類在物件存取裡面,而實務上常常會遇到使用者誤刪檔案,或者變更資料夾內容,此時就可以從這地方去循線找出。
對於公司的稽核任務需要調閱檔案伺服器的event log,本文藉由將安全性event log設定為不覆寫,再透過批次檔撰寫排程,便能完成歷史調閱的需求。
下一篇將會討論,筆者如何在公司操作實現,待續。
感謝網管人141期
如果您不是原文作者的話
這樣已經算是「複製貼上」
沒有太大意義
回頭看了第一篇文章
就是原作者無誤
在此致歉
Sorry
沒關係,因為我一直覺得這種文章呈現的方式會讓人誤會
想說誤會就算了....反正也不會有人認真看
感謝大大~~~認真看文
您好,不曉得您在存取事件檢視器的時候,有沒有遇到
(WARNING: 程序無法存取檔案,因為檔案正由另一個程序使用。)的錯誤息呢?
你好,請問我在測試下,Archiving並不會出現壓縮的資料,反倒是出現在根目錄下,是不是要修正哪個部份呢?謝謝!
set xday=%date:~0,4%%date:~5,2%%date:~8,2%
set xtime=%time:~0,2%%time:~3,2%
path C:\Program Files\7-Zip
set backup_path1=E:\Logs
set upload_path1=E:\Archiving
7z a -t7z %upload_path1%bbup%xday%_%xtime%.7zaa %backup_path1%